.varietyListContent {
  display: flex;
  flex-direction: column;
  height: calc(100vh - 48px);
  background: #f5f5f5;
  padding: 1px;

  .searchSection {
    flex-shrink: 0;
    margin-bottom: 24px;
    padding: 24px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);

    .searchForm {
      display: flex;
      align-items: center;
      gap: 16px;

      :global {
        .ant-form-item {
          margin: 0;
          flex: 1;
        }

        .button-group {
          display: flex;
          gap: 16px;
          flex-shrink: 0;

          .ant-btn {
            min-width: 88px;
          }
        }
      }
    }

    .searchResult {
      margin-top: 16px;
      color: #666;

      span {
        color: #1890ff;
        font-weight: 500;
        margin: 0 4px;
      }
    }
  }

  .varietyListWrapper {
    flex: 1;
    overflow-y: auto;
    margin: 0 -12px;
    padding: 0 12px;
    position: relative;

    .varietyList {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
      gap: 24px;
      margin-bottom: 24px;
    }

    .loadingMore {
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 24px 0;
      color: #666;
      gap: 8px;
    }

    .noMore {
      text-align: center;
      padding: 24px 0;
      color: #999;
      font-size: 14px;
    }
  }

  .varietyCard {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.3s;
    height: 100%;
    cursor: pointer;

    &:hover {
      transform: translateY(-4px);
      box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);

      .posterWrapper img {
        transform: scale(1.05);
      }
    }

    .posterWrapper {
      position: relative;
      width: 100%;
      padding-top: 56.25%; // 统一使用16:9比例
      overflow: hidden;

      :global {
        .ant-image {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;

          img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.3s;
          }
        }
      }
    }

    .contentWrapper {
      padding: 16px;

      .header {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 8px;
        margin-bottom: 12px;

        .title {
          flex: 1;
          margin: 0;
          font-size: 16px;
          line-height: 1.4;
          font-weight: 500;
        }
      }

      .infoList {
        .infoItem {
          display: flex;
          align-items: flex-start;
          gap: 8px;
          margin-bottom: 8px;
          font-size: 14px;

          &:last-child {
            margin-bottom: 0;
          }

          .icon {
            color: #1890ff;
            font-size: 14px;
            margin-top: 3px;
          }

          .label {
            color: #8c8c8c;
            flex-shrink: 0;
          }

          .value {
            color: #262626;
            flex: 1;
          }

          .description {
            color: #666;
            line-height: 1.5;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
          }
        }
      }
    }
  }
}

@media (max-width: 768px) {
  .varietyListContent {
    padding: 1px;
    height: calc(100vh - 32px);

    .searchSection {
      padding: 16px;
      margin-bottom: 16px;

      .searchForm {
        flex-direction: column;
        gap: 12px;

        :global {
          .ant-form-item {
            width: 100%;
          }

          .button-group {
            width: 100%;
            
            .ant-btn {
              flex: 1;
            }
          }
        }
      }
    }

    .varietyListWrapper {
      margin: 0 -8px;
      padding: 0 8px;

      .varietyList {
        grid-template-columns: 1fr;
        gap: 16px;
      }

      .loadingMore, .noMore {
        padding: 16px 0;
      }
    }

    .varietyCard {
      .contentWrapper {
        padding: 12px;

        .header {
          margin-bottom: 8px;

          .title {
            font-size: 15px;
          }
        }

        .infoList {
          .infoItem {
            gap: 6px;
            margin-bottom: 6px;
            font-size: 13px;
          }
        }
      }
    }
  }
} 